package com.crazymaker.push.platform.contract.constants;


/**
 * The  message type enum.
 * <p>
 * <p>
 * * 渠道类型
 * * 1 websocket  2 alibaba 阿里云推送  3 短信  4 企业微信   5 钉钉   6 邮件....
 * * 备注： 第2期将改为 位的模式，实现一次多种渠道推送
 */
public enum MessageTypeEnum {
    /**
     * .websocket
     */
    WEB_SOCKET(1, "websocket"),
    /**
     * 阿里云推送.
     */
    ALIYUN(2, "阿里云推送"),

    /**
     * 短信.
     */
    SHORT_MESSAGE(3, "短信"),
    /**
     * 企业微信.
     */
    QIYE_WEIXIN(4, "企业微信"),
    /**
     * 钉钉.
     */
    DING_DING(5, "钉钉"),
    /**
     * 邮件.
     */
    EMAIL(6, "邮件");


    private int messageType;

    private String value;

    MessageTypeEnum(int messageType, String value) {
        this.messageType = messageType;
        this.value = value;
    }

    /**
     * Message type int.
     *
     * @return the int
     */
    public int messageType() {
        return messageType;
    }

    /**
     * Value string.
     *
     * @return the string
     */
    public String value() {
        return value;
    }

    public String getTopicKey(String topic) {

      return topic + "-" + messageType();
    }
}
